package model;


import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import dataaccess.LivroDao;

public class Livro {

	private String isbn;
	private String nome;
	private String autor;
	private String editora;
	private int ano;
	private String sinopse;
	private int classificacao;
	private String estadoLivro;
	private int ativo;

	public Livro(String isbn){
		this.isbn = isbn;
	}


	public Livro buscaLivro() {
		LivroDao livroDao = new LivroDao();
		Livro livro = livroDao.buscaLivroISBN(this);

		return livro;
		
	}


	public ArrayList<Livro> buscaLivros(ArrayList<String> isbns) {
		LivroDao livroDao = new LivroDao();
		ArrayList<Livro> livros = livroDao.buscaLivrosISBN(isbns);
		
		return livros;
	}

	public Livro adicionarLivroSistema(int ano, String autor, int classificacao, String editora, String estadoLivro, String nome, String sinopse) {

		LivroDao livroDao = new LivroDao();

		Livro livroExiste = this.buscaLivro();
		
		Livro livro;

		if(livroExiste == null){

			livro = new Livro(this.isbn);
			livro.setAtributosParams(ano, autor, classificacao, editora, estadoLivro, nome, sinopse);
			livro.setAtivo(0);

			if(livroDao.insereLivro(livro) != 1 ){
				return null; 	
			};
		}else{
			livro = livroExiste;
		}

		return livro;

	}	


	public String getIsbn() {
		return isbn;
	}

	public void setIsbn(String isbn) {
		this.isbn = isbn;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getAutor() {
		return autor;
	}

	public void setAutor(String autor) {
		this.autor = autor;
	}

	public String getEditora() {
		return editora;
	}

	public void setEditora(String editora) {
		this.editora = editora;
	}

	public int getAno() {
		return ano;
	}


	public void setAno(int ano) {		
		this.ano = ano;
	}

	public String getSinopse() {
		return sinopse;
	}

	public void setSinopse(String sinopse) {
		this.sinopse = sinopse;
	}

	public int getClassificacao() {
		return classificacao;
	}

	public void setClassificacao(int i) {
		this.classificacao = i;
	}


	public String getEstadoLivro() {
		return estadoLivro;
	}


	public void setEstadoLivro(String estadoLivro) {
		this.estadoLivro = estadoLivro;
	}

	public void setAtributosObjeto(Livro livro){
		this.setAno(livro.getAno());
		this.setAutor(livro.getAutor());
		this.setClassificacao(livro.getClassificacao());
		this.setSinopse(livro.getSinopse());
		this.setEditora(livro.getEditora());
		this.setNome(livro.getNome());
	}

	public void setAtributosParams(int ano, String autor, int classificacao, String editora, String estadoLivro, String nome, String sinopse){
		this.setAno(ano);
		this.setAutor(autor);
		this.setClassificacao(classificacao);
		this.setEditora(editora);;
		this.setNome(nome);
		this.setSinopse(sinopse);
	}


	public int isAtivo() {
		return ativo;
	}


	public void setAtivo(int ativo) {
		this.ativo = ativo;
	}

}
